import java.util.ArrayList;

public class heWeiS {
    /**
     * 输入一个递增排序的数组和一个数字s，在数组中查找两个数，使得它们的和正好是s。
     * 如果有多对数字的和等于s，则输出任意一对即可。
     * 示例 1：
     * 输入：nums = [2,7,11,15], target = 9
     * 输出：[2,7] 或者 [7,2]
     */
    public int[] twoSum(int[] nums, int target) {
        if (nums == null || target < 0) {
            return null;
        }
        int left = 0;
        int right = nums.length-1;
        int cur = nums[left] + nums[right];
        if (cur == target) {
            return new int[]{nums[left],nums[right]};
        }else if(cur > target) {
            right--;
        }else {
            left++;
        }
        return new int[]{};
    }
    public ArrayList<Integer> FindNumbersWithSum(int [] array, int sum) {
        ArrayList<Integer> list = new ArrayList<>();
        if (array == null || sum < 0) {
            return null;
        }
        int left = 0;
        int right = array.length-1;
        while(left < right) {
            int cur = array[left] + array[right];
            if (cur == sum) {
                list.add(array[left]);
                list.add(array[right]);
                return list;
            }else if (cur > sum) {
                right--;
            }else {
                left++;
            }
        }
        return list;
    }
}
